package com.example.mysql_mybatis_demo.springsource.config;

import lombok.Data;
import org.springframework.stereotype.Component;

// 第二个Bean，并传入 value 标注其id
@Component(value = "child")
@Data
// 注意，这个Bean使用extends继承了 ParentTestBean 这个Bean
public class DerivedTestBean extends ParentTestBean{
    // DerivedTestBean 将自动继承 ParentTestBean 中所有的属性，不管在 DerivedTestBean 中是否重新声明那些属性
    // 如果子Bean不对继承来的属性做任何处理，则默认与父Bean做等值处理，如果子Bean对继承来的属性重新赋初始值，则会覆盖父Bean对应属性的初始值
    private String name = "child";
    // 但是在 DerivedTestBean 中声明 ParentTestBean 中所没有的新属性，则 ParentTestBean 是不会拥有子Bean的属性的
    private String address;
}
